package com.ljj.dolls;

import java.util.Random;

public class Main {
    public static void main(String[] args) {
        DollsMap map=new DollsMap();
        Random r=new Random();
        long t1=System.currentTimeMillis();
//        for(int i=0;i<2;i++){
//            for(int i1=0;i1<1;i1++) {
//                for (int i2 = 0; i2 < 1; i2++) {
//                    for (int i3 = 0; i3 < 1; i3++) {
//                        for (int i4 = 0; i4 < 10000000; i4++) {
//                            map.put(new Key1(i, i1, i2, i3, i4), 1,i,i1,i2,i3,i4);
//                        }
//                    }
//                }
//            }
//        }
//        for(int i=0;i<100000000;i++){
//            map.put(new Key1(1, 1), 1,1,1);
//        }
        long t2=System.currentTimeMillis();
        System.out.println(t2-t1);
//        for(int i=0;i<2;i++){
//            for(int i1=0;i1<1;i1++) {
//                for (int i2 = 0; i2 < 1; i2++) {
//                    for (int i3 = 0; i3 < 1; i3++) {
//                        for (int i4 = 0; i4 < 10000000; i4++) {
//                            map.put(new Key1(i, i1, i2, i3, i4), 1);
//                        }
//                    }
//                }
//            }
//        }
        for(int i=0;i<100;i++){
            map.put(new Key1(1, 1), 1);
        }
        long t3=System.currentTimeMillis();
        System.out.println(t3-t2);


//        for(int i=0;i<2;i++){
//            for(int i1=0;i1<1;i1++) {
//                for (int i2 = 0; i2 < 1; i2++) {
//                    for (int i3 = 0; i3 < 1; i3++) {
//                        for (int i4 = 0; i4 < 10000000; i4++) {
//                            Object o=map.get(new Key1(i,i1,i2,i3,i4),null,i,i1,i2,i3,i4);
//                            if(o==null){
//                                System.out.println(o);
//                            }
//                        }
//                    }
//                }
//            }
//        }
        System.out.println("start search");
        Long tt1=System.currentTimeMillis();
        for(int i=0;i<100000000;i++){
            Object o=map.get(new Key1(1,1),null,1,1);
            if (o == null) {
                System.out.println(o);
            }
        }
        Long tt2=System.currentTimeMillis();
        System.out.println(tt2-tt1);

        tt1=System.currentTimeMillis();
        for(int i=0;i<100000000;i++){
            Object o=map.get(new Key1(1,1),null,1,1);
            if (o == null) {
                System.out.println(o);
            }
        }
        tt2=System.currentTimeMillis();
        System.out.println(tt2-tt1);

//        Map<Integer,Integer> map1=new HashMap<>();
//        Long tt1=System.currentTimeMillis();
//        for(int i=0;i<200000000;i++){
//            map1.putIfAbsent(i,i);
//        }
//        Long tt2=System.currentTimeMillis();
//        System.out.println(tt2-tt1);
//        for(int i=0;i<200000000;i++){
//            map1.get(i);
//        }
//        tt1=System.currentTimeMillis();
//        System.out.println(tt1-tt2);

    }

    public static class Key1{
        private int a;
        private int b;
//        private int c;
//        private int d;
//        private int e;

        public Key1(int a, int b) {
            this.a = a;
            this.b = b;
            //this.c = c;
            //this.d = d;
            //this.e = e;
        }

        public int getA() {
            return a;
        }

        public void setA(int a) {
            this.a = a;
        }

        public int getB() {
            return b;
        }

        public void setB(int b) {
            this.b = b;
        }

//        public int getC() {
//            return c;
//        }
//
//        public void setC(int c) {
//            this.c = c;
//        }
//
//        public int getD() {
//            return d;
//        }
//
//        public void setD(int d) {
//            this.d = d;
//        }
//
//        public int getE() {
//            return e;
//        }
//
//        public void setE(int e) {
//            this.e = e;
//        }
    }
}
